package cn.wolfcode.wolf2w.service;

import cn.wolfcode.wolf2w.domain.Banner;
import cn.wolfcode.wolf2w.query.BannerQuery;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**
 * 业务层接口
 */
public interface IBannerService {
    /**
     * 添加功能
     * @param banner
     */
    void save(Banner banner);

    /**
     * 删除功能
     * @param id
     */
    void delete(String id);

    /**
     * 修改功能
     * @param banner
     */
    void update(Banner banner);

    /**
     * 查询一个功能
     * @param id
     * @return
     */
    Banner get(String id);

    /**
     * 查询所有功能
     * @return
     */
    List<Banner> lists();

    /**
     * 查询分页功能
     * @param qo
     * @return
     */
    Page<Banner> query(BannerQuery qo);

    /**
     * 返回一个map集合封装好所有的攻略和游记
     * @return
     */
    Map<String, Object> getAllTypeMap();

    /**
     * 添加/删改
     * @param banner
     */
    void saveOrUpdate(Banner banner);

    /**
     * 拿到游记推荐中前五的游记
     * @param state
     * @return
     */
    List<Banner> travelQuer(int state,int type);
}
